package com.hxzy.shop.order.feign;

import com.hxzy.shop.entity.ExpressThreshold;
//import com.hxzy.shop.order.dto.TransportSoOrderDto;
//import com.hxzy.shop.order.dto.WeightFreightDto;
import com.hxzy.shop.order.dto.req.IntraCityFreightReq;
import com.hxzy.shop.order.dto.req.RuleInOrderAndDrugReq;
import com.hxzy.shop.order.fallback.FreightFeignFallback;
import com.hxzy.shop.vo.Result;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import java.math.BigDecimal;

/**
 * @ClassName FreightFeign
 * @Author wengjt
 * @Date 2021/8/1613:12
 * @Description
 **/
@FeignClient(value = "freight",fallback = FreightFeignFallback.class)
public interface FreightFeign {
//    @ApiOperation(value = "（订单b2c）运费规则计算", notes = "（订单）运费规则计算")
//    @PostMapping(value = "/freightSetUp/ruleInOrderAndDrug")
//    public Result<BigDecimal> ruleInOrderAndDrug(@Validated @RequestBody RuleInOrderAndDrugReq req);
//
//    @ApiOperation(value = "计算同城运费(按公里计算)")
//    @PostMapping(value = "/freightSetUp/intra/city/freight")
//    public Result<BigDecimal> intraCityFreight(@RequestBody IntraCityFreightReq intraCityFreightReq);
//
//    @ApiOperation(value = "计算同城运费(按kg计算)")
//    @PostMapping(value = "/freightSetUp/intra/city/getByWeightFreight")
//    public BigDecimal getByWeightFreight(@RequestBody WeightFreightDto dto);
//
//    @ApiOperation("发货单创建")
//    @PostMapping("/jdExpressPin/transportSoOrder")
//    public Result<Object> transportSoOrder(@RequestBody TransportSoOrderDto dto);
//
//    @ApiOperation("单据取消")
//    @PostMapping("/jdExpressPin/clpsOrderCancel")
//    public Result<Object> clpsOrderCancel(@RequestBody TransportSoOrderDto dto);
//
//    @ApiOperation("查询收费门槛详情")
//    @GetMapping("/expressThreshold/detail")
//    public Result<ExpressThreshold> detail();

}


